package cn.iocoder.yudao.module.dbit.dal.mysql.jobinfo;

import java.util.*;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
import cn.iocoder.yudao.module.dbit.dal.dataobject.jobinfo.JobInfoDO;
import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.dbit.controller.admin.jobinfo.vo.*;

/**
 * 企业职位信息 Mapper
 *
 * @author DaBen
 */
@Mapper
public interface JobInfoMapper extends BaseMapperX<JobInfoDO> {
    default PageResult<JobInfoDO> selectPage(JobInfoPageReqVO reqVO) {
        // 获取当前登录用户id
        Long userId = SecurityFrameworkUtils.getLoginUserId();

        return selectPage(reqVO, new LambdaQueryWrapperX<JobInfoDO>()
                .eqIfPresent(JobInfoDO::getCreator, userId)
                .eqIfPresent(JobInfoDO::getJobStatus, reqVO.getJobStatus())
                .orderByDesc(JobInfoDO::getJobId));
    }


}